<div class="layui-card">
    <div class="layui-card-header">
        <h2 class="header-title">导航管理</h2>
        <span class="layui-breadcrumb pull-right">
          <a href="#!home_console">首页</a>
          <a><cite>导航管理</cite></a>
        </span>
    </div>
    <div class="layui-card-body">
        <div class="layui-form toolbar">
            搜索：<input id="menus-edit-search" class="layui-input search-input" type="text" placeholder="输入关键字"/>&emsp;
            <button id="menus-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
            <button id="menus-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
        </div>

        <!-- 数据表格 -->
        <table class="layui-table" id="menus-table" lay-filter="menus-table"></table>
    </div>
</div>
<!--状态操作-->
<script type="text/html" id="switchTpl">
    <!-- 这里的checked的状态只是演示 -->
    <input type="checkbox" name="enable" value="{{d.naviid}}" lay-skin="switch" lay-text="停用|启用" lay-filter="station"
           {{d.enable=='1'?'checked':''}}>
</script>
<!-- 表格操作列 -->
<script type="text/html" id="menus-state">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
<script>

    layui.use(['form', 'table', 'util', 'config', 'admin', 'formSelects', 'treetable'],function () {
        var table = layui.table;
        var layer = layui.layer;
        var admin = layui.admin;
        var config = layui.config;
        var form = layui.form;

        // 渲染表格
        var renderTable = function () {
            table.render({
                elem: '#menus-table',
                url: config.base_server + 'api-administrators/nav/findAll',
                where: {
                    access_token: config.getToken().access_token
                },
                parseData: function (res) {//数据格式解析的回调函数，用于将返回的任意数据格式解析成 table 组件规定的数据格式。
                    console.log(res);
                    return {
                        "code": 0,
                        "msg": "",
                        "count": res.data.count,
                        "data": res.data.navigationList,
                    }
                },
                page: true,
                cols: [[
                    {type: 'numbers'},
                    {field: 'naname', title: '导航名'},
                    {field: 'navurl', title: '导航链接'},
                    {field: 'crtime', title: '创建时间'},
                    {field: 'enable', width: 95, templet: '#switchTpl', title: '导航状态'},
                    {templet: '#menus-state', width: 120, align: 'center', title: '操作'}
                ]]
            });
        };

        renderTable();
        //监听状态操作
        form.on('switch(station)', function (obj) {
            if (obj.othis[0].innerText == '启用') {
                $.ajax({
                    url: config.base_server + 'api-administrators/nav/update',//地址：访问后台的地址
                    data: {naviid: obj.value, enable: 1, access_token: config.getToken().access_token,},//前端传递给后台的数据
                    type: 'POST',
                    dataType: 'json',//是后端传递到前端的数据格式
                    success: function (data) {//后端给前端的一个反馈
                        layer.msg('停用成功！')
                    }
                });
            } else {
                $.ajax({
                    url: config.base_server + 'api-administrators/nav/update',//地址：访问后台的地址
                    data: {naviid: obj.value, enable: 2, access_token: config.getToken().access_token,},//前端传递给后台的数据
                    type: 'POST',
                    dataType: 'json',//是后端传递到前端的数据格式
                    success: function (data) {//后端给前端的一个反馈
                        layer.msg('启用成功！')
                    }
                });
            }

        });
        // 工具条点击事件
        table.on('tool(menus-table)', function (obj) {
            var data = obj.data;
            var layEvent = obj.event;

            if (layEvent === 'edit') { // 修改
                showEditModel(data);
            } else if (layEvent === 'del') {
                layer.confirm('确定删除此菜单吗？', function () {
                    layer.load(2);
                    admin.req('api-administrators/nav/delete/'+data.naviid, {access_token: config.getToken().access_token}, function (data) {
                        layer.closeAll('loading');
                        if (0 == data.code) {
                            layer.msg("删除成功！");
                            renderTable();
                        } else {
                            layer.msg("删除失败！");
                        }
                    }, 'post');
                });
            }
        });

        // 显示编辑弹窗
        var showEditModel = function (data) {
            var title = data ? '修改导航' : '添加导航';
            admin.putTempData('t_menus', data);
            admin.popupCenter({
                title: title,
                path: 'pages/currency/nav_form.html',
                finish: function () {
                    renderTable();
                }
            });

        };

        // 添加按钮点击事件
        $('#menus-btn-add').click(function () {
            showEditModel();
        });

        // 搜索按钮点击事件
        $('#menus-btn-search').click(function () {
            var keyword = $('#menus-edit-search').val();
            table.reload('menus-table', {where: {naname: keyword}});
        });
    });
</script>